package com.gitee.huanminabc.db_freedom.action;


import com.gitee.huanminabc.db_freedom.proxy.ActionProxy;
import com.gitee.huanminabc.db_freedom.wrapper.AbstractSqlWrapper;

import java.lang.reflect.Method;

/**
 * LambdaSQL操作记录  ,每次的全部链路都会记录,除非重新创建LambdaSQL
 * 目前没有进行合并 比如son操作底层就是重新创建了一个LambdaSQL,那么之前的记录是不会关联的
 * 目前还没有啥场景需要合并
 */
public class OperationRecordAction implements ActionProxy {
    @Override
    public void before(Object target, Method method, Object[] args) {
        if (target instanceof AbstractSqlWrapper){
            ((AbstractSqlWrapper) target).getOperationRecord().add(method.getName());
        }
    }
}
